A. Field of the Invention
This invention relates generally to communication networks, and more particularly, to the managing/provisioning of network services.
B. Description of Related Art
Communication networks, such as Internet Protocol (IP) based networks, are often large networks maintained by network service providers. Typically, service providers sell services and bandwidth on their network to interested parties (e.g., end-users, corporations, etc.).
A typical IP network includes a number of network elements, such as routers, that act together to form the complete network. A router is a device that determines the next network element to which data units (e.g., packets) should be forwarded during their trip through the network. Conventional routers often support a number of network features beyond basic routing of data units. For example, a network may support value-added technologies and protocols such as Multi-Protocol Label Switching (MPLS), Traffic Engineering, Class of Service Differentiation, Virtual Private Networks (VPNs), and IP version 6. A VPN, for example, is a mechanism through which a service provider may provide an encrypted link between multiple endpoints, such that a customer using the VPN is assured of a private connection, even though the path of the VPN through the network may extend through non-secure portions of the network.
Network provisioning may include the process of initially configuring the network to support a customer or a value-added service or technology for the customer. Network provisioning can be a complicated and difficult task. To help manage complex networks, service providers use network management software that may query the various network elements to discover their configurations and direct the network elements to reconfigure themselves for the various network provisioning tasks.
Existing network management software/techniques, however, can be relatively complicated and problematic. For example, because of interoperability problems associated with a heterogeneous network made up of different types or vendors of network elements, the network management software may have difficulty consistently discovering the current state or capabilities of all the network elements. Additionally, actually communicating and configuring each network element may require individually logging on to the network elements through, for example, a basic command line interface, and providing commands from a set of commands designed to work with that network element.
Accordingly, there is a need in the art for a system that will allow service providers or others to more easily and reliably provision network services.